#include "utils.h"

CipherContext* create_cipher_context(const char *password) {
    CipherContext *ctx = (CipherContext*)malloc(sizeof(CipherContext));
    if (!ctx) return NULL;

    ctx->password_len = strlen(password);
    ctx->password = (char*)malloc(ctx->password_len + 1);
    if (!ctx->password) {
        free(ctx);
        return NULL;
    }
    strcpy(ctx->password, password);

    return ctx;
}

void free_cipher_context(CipherContext *ctx) {
    if (ctx) {
        free(ctx->password);
        free(ctx);
    }
}